package com.xqzgj.system.mapper;

import java.util.List;
import java.util.Map;
import com.xqzgj.system.domain.StockInfo;

/**
 * 库存信息Mapper接口
 */
public interface StockInfoMapper {
    /**
     * 查询总库存量
     */
    Long selectTotalStock();

    /**
     * 查询各分类库存数量
     */
    List<Map<String, Object>> selectStockByCategory();

    /**
     * 查询库存信息
     */
    public StockInfo selectStockInfoById(Long id);

    /**
     * 查询库存信息列表
     */
    public List<StockInfo> selectStockInfoList(StockInfo stockInfo);

    /**
     * 新增库存信息
     */
    public int insertStockInfo(StockInfo stockInfo);

    /**
     * 修改库存信息
     */
    public int updateStockInfo(StockInfo stockInfo);

    /**
     * 删除库存信息
     */
    public int deleteStockInfoById(Long id);

    /**
     * 批量删除库存信息
     */
    public int deleteStockInfoByIds(Long[] ids);

    /**
     * 检查商品编码是否唯一
     */
    public StockInfo checkGoodsCodeUnique(String goodsCode);

    /**
     * 检查商品名称是否唯一
     */
    public StockInfo checkGoodsNameUnique(String goodsName);

    /**
     * 更新库存数量
     */
    public int updateStockQuantity(StockInfo stockInfo);

    /**
     * 更新库存状态
     */
    public int updateStockStatus(StockInfo stockInfo);
}